//! 字符集模块
//! 
//! 按类别组织的Unicode字符和图标集合

pub mod character_set;
pub mod basic;
pub mod programmer;
pub mod math;
pub mod science;
pub mod currency;
pub mod weather;
pub mod music;
pub mod gaming;
pub mod social;
pub mod food;
pub mod transport;
pub mod office;
pub mod medical;
pub mod religious;
pub mod cultural;

// 重新导出CharacterSet
pub use character_set::CharacterSet;

use std::collections::HashMap;

/// 获取所有默认字符集
pub fn get_default_characters() -> HashMap<String, CharacterSet> {
    let mut characters = HashMap::new();
    
    // 合并所有类别的字符集
    characters.extend(basic::get_basic_characters());
    characters.extend(programmer::get_programmer_characters());
    characters.extend(math::get_math_characters());
    characters.extend(science::get_science_characters());
    characters.extend(currency::get_currency_characters());
    characters.extend(weather::get_weather_characters());
    characters.extend(music::get_music_characters());
    characters.extend(gaming::get_gaming_characters());
    characters.extend(social::get_social_characters());
    characters.extend(food::get_food_characters());
    characters.extend(transport::get_transport_characters());
    characters.extend(office::get_office_characters());
    characters.extend(medical::get_medical_characters());
    characters.extend(religious::get_religious_characters());
    characters.extend(cultural::get_cultural_characters());
    
    characters
}
